bitkeeper revision 1.1108.15.1 (41051853Nw9Dyat8lzE1v6Ex4on1YA)
authorcl349@freefall.cl.cam.ac.uk <cl349@freefall.cl.cam.ac.uk>
Mon, 26 Jul 2004 14:42:27 +0000 (14:42 +0000)
committercl349@freefall.cl.cam.ac.uk <cl349@freefall.cl.cam.ac.uk>
Mon, 26 Jul 2004 14:42:27 +0000 (14:42 +0000)
Fix loading of kernel images to addresses not aligned on pagetable boundaries.

xen/arch/x86/domain.c

index 55293ed973ef82635a9b654ed93ad2ad8d115072..e58c74d164cc0e0508115fef9fcc0092162aecf6 100644 (file)
@@ -695,6 +695,8 @@ int construct_dom0(struct domain *p,
             mpt_alloc += PAGE_SIZE;
             *l2tab++ = mk_l2_pgentry((unsigned long)l1start | L2_PROT);
             clear_page(l1tab);
+            if ( count == 0 )
+                l1tab += l1_table_offset(v_start);
         }
         *l1tab++ = mk_l1_pgentry((mfn << PAGE_SHIFT) | L1_PROT);